navigationGo.pngQuick Navigation
allprojects32.pngAll projects
hardware32.pngHardware
links32.pngLinks

favoriteStar32.pngTop projects
Alan numitron clock
Clapclap 2313/1386
SNES Pi Webserver
USB Volume/USB toys
Smokey amp
Laser cutter
WordClock
ardReveil v3
SNES Arcade cabinet
Game boy projects
cameleon
Home Presence Detector

github32.pngGitHub
AlanFromJapan

navigationMail.pngContact me

alanfjmail.png
3flags.pngWho's Alan?


Akizukidenshi
Elec-lab
Rand Nerd Tut
EEVblog
SpritesMods
AvrFreaks
Gameboy Dev
FLOZz' blog
Switch-science
Sparkfun
Suzusho
Datasheet Lib
Reddit Elec
Ermicro
Carnet du maker (fr)

emulation machine from scratch

Last update: Thu Jun 5 22:25:40 2025
This is not a micro step by step build, it's more a memento for me on how I did it, in case I have to redo it one day. And if you find it of any help, I'm happy for you!

Presentation

Principle

Got an old PC so I decided to stick it under the TV to play retro old games with my kids.

Implementation

  • Grab an old PC, put a Linux. My choice was a Lubuntu 20.4 for speed and lightness.
  • sudo apt install retroarch
  • sudo apt install libretro-* whichever you need as emulator
  • sudo apt-get install libsdl2-dev libboost-system-dev libboost-filesystem-dev libboost-date-time-dev libboost-locale-dev libfreeimage-dev libfreetype6-dev libeigen3-dev libcurl4-openssl-dev libasound2-dev libgl1-mesa-dev build-essential cmake fonts-droid git
  • git clone https://github.com/Aloshi/EmulationStation
  • cmake .
  • make
  • Edit the ~/.emulationstation/es_systems.cfg:
  • change the command to reflect the emulators you use/need
  • edit path to the roms
  • edit roms extension
  • change the retroach run command:
  • --fullscreen
    --libretro=/usr/lib/x86_64-linux-gnu/libretro/xxxxxemulatornamexxxx_libretro.so
    Edit the ~/.config/retroarch/retroarch.cfg or run retroarch to edit settings:
  • Settings > Input > Input Hotkey Binds >
  • ... Enable hotkey to define the hotkey
  • ... Load state to define the OTHER key you have to press at the same time as the hotkey
  • Allow the current user to shudown WITHOUT password:
  • sudo visudo
  • user_name ALL=(ALL) NOPASSWD: /sbin/poweroff, /sbin/reboot, /sbin/shutdown
  • Bill of materials

    Pictures

    Links

    Helpful sources

    Inspiration

    All content on this site is shared under the MIT licence (do what u want, don't sue me, hat tip appreciated)
    electrogeek.tokyo ~ Formerly known as Kalshagar.wikispaces.com and electrogeek.cc (AlanFromJapan [2009 - 2025])